/**
 * 
 */
package org.cnbi.utils.pojo.indicator;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.cnbi.entity.IndicatorExpression;
import org.cnbi.utils.tools.GlobalConstants;
import org.codehaus.jackson.map.annotate.JsonSerialize;

/**
 * Copyright © 2014中国经邦. All rights reserved.
 * @author 龚佳新
 * @date 2014年5月10日下午3:02:36
 * @cnbi-utils
 * 做指标查询时用到参数bean
 */
public class IndicatorParams implements Serializable {
	
	/**
	 * 查询主题
	 */
	@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
	private String subject = GlobalConstants.PERIOD_SUBJECT;

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
	private String[] company;
	@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
	private String[] period;
	@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
	private int[] indicator;
	
	
	private String showDim;
	
	
	
	
	
	/**
	 * @return the showDim
	 */
	public String getShowDim() {
		return showDim;
	}

	/**
	 * @param showDim the showDim to set
	 */
	public void setShowDim(String showDim) {
		this.showDim = showDim;
	}

	public IndicatorParams(){}

	/**
	 * @return the company
	 */
	public String[] getCompany() {
		return company;
	}

	/**
	 * @param company the company to set
	 */
	public void setCompany(String[] company) {
		this.company = company;//getArr(company);
	}

	/**
	 * @return the period
	 */
	public String[] getPeriod() {
		return period;
	}

	/**
	 * @param period the period to set
	 */
	public void setPeriod(String[] period) {
		this.period =  period;//getArr(period);
	}

	/**
	 * @return the indicator
	 */
	public int[] getIndicator() {
		return indicator;
	}

	/**
	 * @param indicator the indicator to set
	 */
	public void setIndicator(int[] indicator) {
		this.indicator = indicator;//getArr(indicator);
	}

	/**
	 * @return the subject
	 */
	public String getSubject() {
		return subject;
	}

	/**
	 * @param subject the subject to set
	 */
	public void setSubject(String subject) {
		this.subject = subject;
	}
	
	/**
	 * 指标，公司，期间组合成 list
	 * @param map
	 * @return
	 */
	/*public List<IndicatorDimBean> getIndicatorDimBeanList(Map<Integer,IndicatorExpression> map){
		List<IndicatorDimBean> list = new ArrayList<IndicatorDimBean>();
				for (int i : indicator) {
					for (String c:company) {
						for (String p:period) {
							  list.add(new IndicatorDimBean(i,c,p,(IndicatorExpression)map.get(i).clone()));
						}
					}
				}
		return list;
	}
*/
}
